feat: Add interfaces for focus management#8774
feat: Add interfaces for focus management#8774BenHenning merged 2 commits intoRaspberryPiFoundation:rc/v12.0.0from
Conversation
|
PTAL @gonfunko. Also, will the circular import dependency here actually work? I didn't see any errors during build or in the playground, but since the new interfaces aren't actually being used (only exported) I wasn't sure if such errors would actually come up (I'd expect them to be caught during JavaScript generation from the TypeScript code, but I suppose there might be reasons it's ignored). |
|
LGTM, the import should be fine since it's just importing the type AFAIK. |
|
Thanks @gonfunko! Will need to hold on merging this since the branch needs to be rebased onto v12. |
Introduces the necessary base interfaces for representing different focusable contexts within Blockly. The actual logic for utilizing and implementing these interfaces will come in later PRs.
f39886f to
3ae422a
Compare
|
Probably doesn't need a re-review. There was one conflict in |
They didn't trigger automatically after a force push.
The basics
The details
Resolves
Fixes #8772
Fixes #8773
Fixes part of #8770
Proposed Changes
Introduces the necessary base interfaces for representing different focusable contexts within Blockly. The actual logic for utilizing and implementing these interfaces will come in later PRs.
Reason for Changes
These interfaces provide the foundation for introducing a central system for managing focus (see #8770 for more context).
Test Coverage
N/A -- This is an interface-only change.
Documentation
Probably not--the class documentation should be sufficient.
Additional Information
See also RaspberryPiFoundation/blockly-keyboard-experimentation#142 (comment) for broader technical design context on the introduction of these new interfaces.